package com.zero.qth.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.zero.common.annotation.excel.Excel;
import com.zero.common.core.domain.base.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;


/**
 * 用户列表对象 users
 *
 * @author cai-xu-kun
 * @date 2025-08-02
 */
@Data
@ToString
@NoArgsConstructor
@AllArgsConstructor
public class Users extends BaseEntity {
    /** 用户ID */
    @Excel(name = "用户ID")
    private Long id;

    /** 微信小程序用户ID */
    @Excel(name = "微信小程序用户ID")
    private String openId;

    /** 用户姓名 */
    @Excel(name = "用户姓名")
    private String username;

    /** 性别(1-男，0-女) */
    @Excel(name = "性别(1-男，0-女)")
    private Integer sex;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String phone;

    /** 注册时间 */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "注册时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date registerTime;

    /** 注册渠道（1-后台系统，2-小程序，3-司机报单，4-老板端，5-APP，6-公众号，7-微信群） */
    @Excel(name = "注册渠道", readConverterExp = "1=-后台系统，2-小程序，3-司机报单，4-老板端，5-APP，6-公众号，7-微信群")
    private Integer registrationChannel;

    /** 用户标签 */
    private Integer userTag;

    /** 紧急联系人 */
    @Excel(name = "紧急联系人")
    private String emergencyContact;

    /** 紧急联系人电话 */
    @Excel(name = "紧急联系人电话")
    private String emergencyContactPhone;

    /** 微信号 */
    @Excel(name = "微信号")
    private String wechat;

    /** 订单数量 */
    @Excel(name = "订单数量")
    private Long orderNum;

    /** 用户状态 */
    @Excel(name = "用户状态", readConverterExp = "0=正常, 1=禁用 ")
    private Integer status;


}
